查看原文
其他

绘制全国祠堂密度地图

爬虫俱乐部 Stata and Python数据分析 2023-01-01


本文作者:刘光中,河南大学经济学院

本文编辑:喻淑敏

技术总编:李婷婷

Stata&Python云端课程来啦!

      为了平衡团队运营成本,维系公众号的运营,也与国内动辄数千元的Stata课程缩短差距,我们的网课不得不上调价格,我们决定于2022年4月1日起调价,Python课程的价格调整为399.9元Stata基础课程调为399.9元Stata进阶课程调整到399.9元。大家可以告知一下身边想要购买的小伙伴,欲购从速哦,对报名有任何疑问欢迎在公众号后台和腾讯课堂留言~我们在这篇推文提供了每门课程的课程二维码,大家有需要的话可以直接扫描二维码查看课程详情并进行购买哦~


导读


祠堂,是儒家祭祀祖先或先贤的场所。祠堂有多种用途,最主要还是用于祭祀祖先。在中国古代儒家理论中,家族观念相当深刻,往往一个村落,就生活着一个姓氏的一个家族或者几个大家族,他们大多建有自己的家庙,祭祀祖先。但是解放后,北方好多地方的祠堂被推倒、改造。现在我们想用cnmapsearch命令看看全国还有哪些地方依旧保存着众多祠堂。



1

搜寻全国的祠堂


我们利用全国各省的县区为中心点,使用 cngcode 命令获取经度和纬度,再使用 cnmapsearch 命令以此为中心搜寻周围50公里范围内的祠堂、宗祠、家庙。

clear allcd E:\work\testuse 行政区local bdk 你申请的bdkcngcode,baidukey('bdk') fulladdress(pro_city) lat(xian_lat) long(xian_lng)cnmapsearch,baidukey(`bdk') latitude(xian_lat) longitude(xian_lng) keyword("宗祠") radius(50000)keep if index(tag,"旅游景点") | index(tag,"文物古迹")drop locid centerid telephone distanceduplicates drop loc_lat loc_lng,forcesave 宗祠,replace

执行以上命令,cnmapsearch“宗祠”为关键字,搜索半径为50公里,找到的部分数据如下图所示:

我们分别把cnmapsearch的keyword设置为“祠堂”“家庙”再运行程序,将数据保存为“祠堂.dta”、“家庙.dta”,最后进行合并,并删除重复项。

clearappend using 宗祠append using 祠堂append using 家庙duplicates drop loc_lat loc_lng,forcesave 全部祠堂,replace

合并后部分结果如下图所示:

获取到全部祠堂后(港澳台的数据暂不统计),按照省份进行数量统计,并用各省的祠堂数量除以各省的面积,得到全国各省的祠堂密度。其中省的面积单位为:万平方千米

bysort province: gen nums=_Nkeep province numsduplicates drop province,forcegen midu=nums/vsave 全国祠堂统计,replace


2

绘制全国祠堂密度地图


拿到了全国祠堂的密度数据以后,我们就用spmap命令来绘制一张中国祠堂地图。

首先从网上下载并解压一份中国地图并转码,将china_label.dta与当前的全国祠堂统计文档进行合并后保存。

copy "http://fmwww.bc.edu/repec/bocode/c/china_map.zip" china_map.zip, replace unzipfile china_map, replaceuse china_label.dta, clearreplace name = ustrfrom(name,"gb18030",1)gen prov = nameorder prov, after(name)save china_prov.dta, replaceuse 全国祠堂统计,clearrename province provmerge m:m prov using china_prov.dtalist if _merge == 2drop if _merge != 3drop _mergereplace prov = ustrregexra(prov, "省|市|自治区|回族|维吾尔|壮族|特别行政区","")save 1,replace

合并后的部分数据如下图所示:

利用spmap命令中的一些选项设置地图的颜色,分组,标题,比例尺等格式。

spmap midu using "china_map.dta", ///id(id) clmethod(custom) ///clbreaks(0 0.3 1 5 10 30 50 100 200) fcolor( gray blue green yellow orange red purple maroon) ///legenda(on) legorder(lohi) ///graphr(margin(medium)) ///legend(title("密度", size(*0.5) pos(11) color(black)) ///order (2 "非常少" 3 "比较少"4 "少" 5 "一般" 6 "多" 7 "比较多" 8 "非常多" 9 "超级多") color(black))/// label(label(prov) xcoord(x_coord) ycoord(y_coord)) /// title ("中国祠堂地图", size(*0.8)) ///scalebar(units(500) scale(1.0) xpos(100) label("全国祠堂密度"))

绘制出来的地图如下图所示:

由此地图可以看出,南方地区比如广东、福建、浙江、安徽等地区分布着大量的祠堂建筑,而北方地区比如辽宁、北京、山西、陕西的祠堂较少。北方的内蒙古、西藏、新疆、青海可能是没有受到儒家文化的熏陶,基本没有祠堂建筑。

如果我们想知道这些省的祠堂分布在哪些城市里,我们可以以地级市为单位画图,市的面积单位为:平方千米。同样可以按照以上流程来进行,只不过要将矢量地图换成地级市矢量地图,绘制结果如下:


END最后,我们为大家揭秘雪球网(https://xueqiu.com/)最新所展示的沪深证券和港股关注人数增长Top10。




腾讯课堂课程二维码




   


 对我们的推文累计打赏超过1000元,我们即可给您开具发票,发票类别为“咨询费”。用心做事,不负您的支持!














往期推文推荐

如何使用Stata绘制一幅好看的柱状图?

【爬虫篇】基于selenium爬取美团评论

 双标的莱万——足球无关政治?!

 Stata处理重复值:duplicates

It's time to send a flower to your lover!        2021各省GDP新鲜出炉

 爬虫实战-采集全国各省疫情数据

 log——为你的操作保驾护航

 一行代码教你玩转emoji

 票房遇冷的春节档口碑冠军丨《狙击手》影评分析

 学习丰县,营造良好营商环境!

 大国丢娃图:从川渝到徐州!

 丰县“失火”,殃及徐州:股市超跌近30亿!

 Unicode转义字符——编码与解码

        徐州!徐州!

        B站弹幕爬虫——冬奥顶流冰墩墩&雪容融

        不会用Stata做描述性统计表?so easy!

        丰沛之地:备足姨妈巾

 过年啦,用Python绘制一幅属于你的春联吧!

       登上爬虫俱乐部“时光机” |上“机”出发 开启一段奇妙之旅

       【基础篇】查找并输出子字符串的定位

        Stata中的小清新命令——添加观测值

        PCA(主成分分析法)降维——Python实现

       超好用的事件研究法

        如何绘制任泽平《鼓励生育基金》的几幅图

        Python 第六天——字符串

        findname——想要什么找什么

        Python字符串之“分分合合”

        PDF转docx可批量操作?——wordconvert的小技巧

        考研之后,文科生需以“do”躬“do”!

       手绘五星兴家国——用Stata绘制五星红旗

        Seminar丨董事会的性别多样化和企业创新:来自国际的证据

       Python与数据库交互——窗口函数

        Stata之post命令——数据邮递 

        爬虫俱乐部成员的Stata学习经验分享来啦!

       Seminar丨2002年萨班斯·奥克斯利法案的经济后果

关于我们 


   微信公众号“Stata and Python数据分析”分享实用的Stata、Python等软件的数据处理知识,欢迎转载、打赏。我们是由李春涛教授领导下的研究生及本科生组成的大数据处理和分析团队。

   武汉字符串数据科技有限公司一直为广大用户提供数据采集和分析的服务工作,如果您有这方面的需求,请发邮件到statatraining@163.com,或者直接联系我们的数据中台总工程司海涛先生,电话:18203668525,wechat: super4ht。海涛先生曾长期在香港大学从事研究工作,现为知名985大学的博士生,爬虫俱乐部网络爬虫技术和正则表达式的课程负责人。



此外,欢迎大家踊跃投稿,介绍一些关于Stata和Python的数据处理和分析技巧。

投稿邮箱:statatraining@163.com投稿要求:
1)必须原创,禁止抄袭;
2)必须准确,详细,有例子,有截图;
注意事项:
1)所有投稿都会经过本公众号运营团队成员的审核,审核通过才可录用,一经录用,会在该推文里
为作者署名,并有赏金分成。

2)邮件请注明投稿,邮件名称为“投稿+推文名称”。
3)应广大读者要求,现开通有偿问答服务,如果大家遇到有关数据处理、分析等问题,可以在公众
号中提出,只需支付少量赏金,我们会在后期的推文里给予解答。

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存